OPLObjectFile** LOC::O:\GRAPH.OPLAO FLAG% RANGE FUNC1$ FUNC2$ FUNC3$ ARRAY PROCG GOSUBX sin(Q) cos(Q) sin(Q)*sin(Q*4) OnOFO OnOFO LRFSCXIOEDNZPVKT Graphs+ RangesOR+ FunctionsOF+ ShowOS+ ClearOC+ InfoOI Points+ Plot PointsOO+ Edit PointsOE+ Translate PointsOT+ Polynomial Graph FitOP+ Linear Graph FitOL+ Evaluate F(Q)OV Maths+ Runge-KuttaOK+ Newton RaphsonON+ Sims EquationsOZ+ DeterminantsOD Special+ ExitOX gosub gosub Translate Points SOURCE Data File:O TARGET Data File:O F(Q,Y) = G(Q,Y) = Translating PointsO ERRY& ERRY" ERRY" COMPUTE FUNC1$ RANGE FUNC2$ FUNC3$ Runge-Kutta Use formula from graph:+ One,Two,Three,Other Runge-Kutta Initial Q (X) :*/ B}Tj*/ Final Q (X) : Initial Y :*/ B}Tj*/ Number Of Steps :O dY/dQ (Q,Y) : Create File Of Data Points :+ Yes,No Select Filename +"Existing files will be overwrittenO Data Points File :O Doing Runge-KuttaO ERRY& ERRY& Runge-Kutta Final Q (X) : + Final Y : Data Points In FileO Error: took dy/dq=0O FUNC1$ FUNC2$ FUNC3$ Linear Graph Fit Date Name:O Type Of Fit:+ Unweighted,Weighted Graph Fitting...O ERRY& ERRY" ERRY& ERRY" ERRY" ERRY& ERRY" ERRY" Analysing Fit...O ERRY& ERRY" ERRY" ERRY" ERRY" Unweighted Linear Graph Fit ( Points)K Weighted Linear Graph Fit ( Points)K Y = M*Q + CO Gradient M= Standard error(M)= Y-Intercept C= Standard error(C)= Correlation Coeff= Unweighted Linear Graph Fit ( Points)K Weighted Linear Graph Fit ( Points)K Y = M*Q + CO R.M.S. Deviation= Q-Intercept = Standard error = No Q-InterceptO X-bar= Y-bar= Linear Graph Fit +"Do you wish to plot this function:+ Yes,No Graph Number:+ One,Two,Three Linear Graph Fit +"Fitted linear graph now programmedO into graph Linear Graph Fit Linear Graph Fit Failed! COMPUTE FUNC3$ FUNC2$ FUNC1$ SIN(Q) Evaluate F(Q) Function From Graph:+ One,Two,Three,Other B}Tj*/ Function (Other): Evaluate F(Q) F(Q)= CancelO ContinueO SOLSIMS ARRAY FUNC1$ FUNC2$ FUNC3$ OZ4[ Polynomial Graph Fit Data Name:O Degree Of Fit:+ 1,2,3,4,5,6,7,8 Graph Fitting ( VOd|RO Solving Sims...O O 4[ *Q**K |ZRJO |ZRJO |ZRJO |ZRJO |ZRJO |ZRJO |ZRJ+ Polynomial Graph Fit (degree Determinant is R.M.S. Fit= Data PointsKO Polynomial Graph Fit (degree Coefficient C Polynomial Graph Fit (degree Polynomial Graph Fit (degree +"Do you wish to plot this function:+ Yes,No Graph Number:+ One,Two,Three Polynomial Graph Fit (degree + Fitted polynomial now programmedO into graph Polynomial Graph Fit (degree +$Too big a polynomial to attempt plot Polynomial Graph Fit +!Not enough data to fit this graph COMPUTE FUNC1$ FUNC2$ FUNC3$ Newton-Raphson Iteration Use formula from graph:+ One,Two,Three,Other Newton-Raphson Iteration F(Q)= Q starting value:*/ B}Tj*/ Newton Raphson IterationW2LO Newton Raphson Iteration F(Q) Newton Raphson Iteration Derivative uncalculable atO SOLSIMS ARRAY OZ4[ Determinants Solver Matrix width/height:+ 2,3,4,5,6,7,8,9 Determinants - Row Column B}Tj*/ Determinants - Row Column B}Tj*/ Finding Determinant...O Determinants Solver Determinant is SOLSIMS ARRAY OZ4[ Simultaneous Equations Number Unknowns:+ 2,3,4,5,6,7,8,9 H4\[G B}Tj*/ B}Tj*/ Solving Sims...O Sims Solutions Sims Solutions Sims Solutions Determinant= Sims Solutions No one solution ARRAY PROCG RANGE Plot Points Data Name:O Plot Points Graph Number:+ One,Two,Three Range Setting:+ Auto,Current Plot Function Too:+ No,Yes Plot Y Error:+ No,Yes Include (0,0) on axis?O YesOY+ W7Oy@ ERRY" ERRY" ERRY" ERRY" ERRY" ERRY" @Q@RN ERRY" @Q@RWBMx ERRY" @Q@RWBQIx Edit Points Data Name:O Edit Points +%Do you wish to change current points? YesOY+ W7Oy@[u YERR" Edit Points Data Point: Q (or X) Coord:*a Y Coord:*a Err in Y Coord:O Delete Point:+ No,Yes YERR& YERR" Err in Y Coord taken as 1O YERR& Edit Points - Add Point Q (or X) Coord:*a Y Coord:*a Err in Y Coord:O CancelO AcceptO YERR& YERR" Err in Y Coord taken as 1O YERR& RANGE FUNC1$ FUNC2$ FUNC3$ Graph 0 InformationW2LO Graph InformationK <= Q <=KO <= Y <=KO F(Q)= PROCG Clear & Replot Graph Number:+ One,Two,Three,(ALL) Which Graph?O PROCG FUNC1$ FUNC2$ FUNC3$ + Functions Graph Number:+ One,Two,Three F(Q)= Function Not Changed PROCG RANGE Ranges Graph Number:+ One,Two,Three Ranges (Graph Minimum Q:*a Maximum Q:*a Minimum Y:*a Maximum Y:*a Invalid Ranges - Not Set FLAG% Are you sure?O YesOY+ RANGE @Q@RN Plotting Graph Om4`[ Escape Do you wish to abort plottingO graph YesOY+ W7Oy@[ Plotting Graph RANGE FUNC3$ FUNC2$ FUNC1$ Function Undefined At Q= Enter Y value:*a @Q@RN @Q@RN Help: Graph( Graphs( Points( Maths( Info( Help: Graphs( Ranges( + Functions( Show( Clear( Info( Help: Ranges( +$A graph plotting program which won't +#let you change the range you view a +#graph over would be pretty useless. +"This graph plotting program isn't. +$When you change a graph's range, the +#most recent function is re-plotted. Help: Functions( +!Functions to be plotted/evaluated +"should be entered in computer type +#algebra, with Q (not X) as ordinate + variable. Consult the Psion user + manual for the EVAL/Calc format. Help: Show( +%GRAPH has three graph plotting areas. +&These are numbered 1 to 3. Use SHOW to select a graph to view. Help: Clear( +"If you wish to clear one or all of +#the graph plotting areas, then this +!is the menu option to select. The +!graph(s) will be cleared, and the +!last function will be re-plotted. Help: Info( +$Selecting this menu option will show +$you the current ranges and functions +#on each of the three graph plotting +$areas. If a function is too complex, +#it will not fit on the Info window. Help: Points( Plot Points( Edit Points( Translate Points( Polynomial Graph Fit( Linear Graph Fit( Evaluate F(Q)( Help: Plot Points( +%One of the most interesting things to +#be done with data points is to plot +$them. To satisfy the natural urge in +"us all to plot data points, select this option. Help: Edit Points( +$It is often useful to be able to put +#your own data into a graph plotting +#program. I wouldn't want to deprive +%you, so use this option to edit/enter data points. Help: Translate Points( +$When you have created a file of data +&points, you way wish to translate them +%to a new set. eg: translate all the Y +'coordinates to Y**2 or SIN(Y). Use this option to do so. Help: Polynomial Graph Fit( +#You can fit polynomials of the form Y = C0 + C1*Q + C2*Q**2 ... +$Fitted polynomials of up to degree 5 +"can be plotted, either with or not +"with the data points which the fit was calculated from. Help: Linear Graph Fit( +#A linear graph fit is just a degree +%one polynomial fit. You get, however, +!more statistical analysis on this +"menu selection. Note that for this +#as for polynomial fitting, you need +&to have created a file of data points. Help: Evaluate F(Q)( +$To make life easy, you can find F(Q) +&for one of the three graphed functions +#or for a different function entered by you. Help: Maths( Runge-Kutta( Newton Raphson( Sims Equations( Determinants( Help: Runge-Kutta( +%A cunning way to integrate a function +"over a specified range (in Q). The function to be integrated is a function of Q (X) and Y. Help: Newton Raphson( +$Use this to solve F(Q)=0, where F(Q) +"comes from one of the three graphs or is entered specifically. Help: Sims Equations( +$You know the score; you want to know +#what the prices of bits of food are +#from deviously constructed shopping lists. Look no further! Help: Determinants( +"Gives the determinant of up to 9x9 +"matricies. Sims Eqs also gives the `determinant' of the matrix. Help: Info( Graph : Version 1.9O G Essex-Lopresti 1993O +&This program may be freely copied, butO +&I accept no blame for any way in whichO +#it affects your standard of living.O START2 GOSUBT GOSUBK DYDXp GOSUBLt GOSUBV> GOSUBP GOSUBNb COMPUTE GOSUBD GOSUBZ SOLSIMST% GOSUBO GOSUBE GOSUBIG2 GOSUBC GOSUBS GOSUBF75 GOSUBR/6 GOSUBX(8 AXIS{8 PROCG PLOT,;